package com.xinqi.modules.prepare.common.service.impl;

import com.xinqi.modules.prepare.common.dto.data.*;
import com.xinqi.modules.prepare.common.service.PrepareExportService;
import com.xinqi.modules.prepare.courseware.service.PrepareCoursewareService;
import com.xinqi.modules.prepare.data.service.PrepareDataService;
import com.xinqi.modules.prepare.discuss.service.PrepareDiscussService;
import com.xinqi.modules.prepare.homework.service.PrepareHomeworkService;
import com.xinqi.modules.prepare.notice.service.PrepareNoticeService;
import com.xinqi.modules.prepare.paper.service.PrepareExamPaperService;
import com.xinqi.modules.prepare.question.service.PrepareQuestionBankService;
import com.xinqi.modules.prepare.video.service.PrepareVideoService;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;

/**
 * 备课区导出服务层
 *
 * @author wenjie
 * @date 2023/4/13  11:22
 */
@Service
@RequiredArgsConstructor
public class PrepareExportServiceImpl implements PrepareExportService {
    private final PrepareCoursewareService prepareCoursewareService;
    private final PrepareVideoService prepareVideoService;
    private final PrepareDataService prepareDataService;
    private final PrepareHomeworkService homeworkService;
    private final PrepareExamPaperService prepareExamPaperService;
    private final PrepareDiscussService prepareDiscussService;
    private final PrepareNoticeService prepareNoticeService;
    private final PrepareQuestionBankService prepareQuestionBankService;

    @Override
    public PrepareCoursewareData exportCourseware(Long id) {
        return prepareCoursewareService.find(id);
    }

    @Override
    public PrepareVideoData exportVideo(Long id) {
        return prepareVideoService.find(id);
    }

    @Override
    public PrepareDataData exportStudyData(Long id) {
        return prepareDataService.find(id);
    }

    @Override
    public PrepareHomeworkData exportHomework(Long id) {
        return homeworkService.find(id);
    }

    @Override
    public PrepareExamPaperData exportExamPaper(Long id) {
        return prepareExamPaperService.find(id);
    }

    @Override
    public PrepareDiscussData exportDiscuss(Long id) {
        return prepareDiscussService.find(id);
    }

    @Override
    public PrepareNoticeData exportNotice(Long id) {
        return prepareNoticeService.find(id);
    }

    @Override
    public PrepareQuestionBankData exportQuestion(Long id) {
        return prepareQuestionBankService.find(id);
    }
}
